package com.ququ.syb.entrance.utils;

import com.alibaba.fastjson.JSON;
import com.ququ.common.utils.MD5Util;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import java.util.Map;

public class SignUtil {

    private static Logger logger = LoggerFactory.getLogger(SignUtil.class);

    /**
     * 生成签名
     * @param signkey
     * @param sybData
     * @return
     */
    public static String sign(String signkey, Map<String,Object> sybData){
        String jsonData = JSON.toJSONString(sybData);
        logger.debug("签名前内容:{},签名key:{}",jsonData,signkey);
        return MD5Util.md5(jsonData+signkey).toLowerCase();
    }

    public static String sign(String signkey, Object sybData){
        String jsonData = JSON.toJSONString(sybData);
        logger.debug("签名前内容:{},签名key:{}",jsonData,signkey);
        return MD5Util.md5(jsonData+signkey).toLowerCase();
    }

    /**
     * 校验签名
     * @param signkey
     * @param sybData
     * @param sign
     * @return
     */
    public static boolean verifySign(String signkey,String sybData,String sign){
//        String jsonData = JSON.toJSONString(sybData);
        logger.debug("签名前内容:{},签名key:{}",sybData,signkey);
        return MD5Util.md5(sybData+signkey).toLowerCase().equals(sign);
    }


}
